package vip.xiaonuo.biz.modular.pay.param.resp;

import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlProperty;
import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlRootElement;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

/**
 * 接受支付结果的响应
 *
 * @Author:薛守立
 * @CreateTime:2024/9/4 16:13
 */
@Data
@JacksonXmlRootElement(localName = "xml")
public class BizPayOrderResp {

    @Schema(description = "版本号(8)")
    @JacksonXmlProperty(localName = "version")
    String version;

    @Schema(description = "签名方式(12)")
    @JacksonXmlProperty(localName = "sign_type")
    String sign_type;

    @Schema(description = "返回状态码(16)")
    @JacksonXmlProperty(localName = "sign_type")
    String status;

    @Schema(description = "业务结果(16)")
    @JacksonXmlProperty(localName = "result_code")
    String 	result_code;

    @Schema(description = "商户号(16)")
    @JacksonXmlProperty(localName = "mch_id")
    String  mch_id;

    @Schema(description = "随机字符串(16)")
    @JacksonXmlProperty(localName = "nonce_str")
    String  nonce_str;

    @Schema(description = "交易状态(322)")
    @JacksonXmlProperty(localName = "sign")
    String sign;

    @Schema(description = "签名(32)")
    @JacksonXmlProperty(localName = "trade_state")
    String trade_state;

    @Schema(description = "交易类型(32)")
    @JacksonXmlProperty(localName = "trade_type")
    String trade_type;

    @Schema(description = "公众号appid(32)")
    @JacksonXmlProperty(localName = "appid")
    String appid;

    @Schema(description = "是否关注(1)")
    @JacksonXmlProperty(localName = "is_subscribe")
    String is_subscribe;

    @Schema(description = "平台订单号(32)")
    @JacksonXmlProperty(localName = "transaction_id")
    String transaction_id;

    @Schema(description = "商户订单号(32)")
    @JacksonXmlProperty(localName = "out_trade_no")
    String out_trade_no;

    @Schema(description = "总金额(1)")
    @JacksonXmlProperty(localName = "total_fee")
    String total_fee;

    @Schema(description = "货币种类(1)")
    @JacksonXmlProperty(localName = "fee_type")
    String fee_type;

    @Schema(description = "付款银行(32)")
    @JacksonXmlProperty(localName = "bank_type")
    String 	bank_type;

    @Schema(description = "二维码地址")
    @JacksonXmlProperty(localName = "code_url")
    String code_url;

    @Schema(description = "二维码图像")
    @JacksonXmlProperty(localName = "code_img_url")
    String code_img_url;

    @Schema(description = "标识")
    @JacksonXmlProperty(localName = "uuid")
    String uuid;

}
